Automatic recognition of user activity can be used in numerous context-aware applications and technologies, such as, applications which provide recommendations, user profiling, health/wellness applications, and smart-home applications. For example, automatic recognition of user activity is useful with respect to providing context-based targeted advertising and activity-aware multimedia content recommendations such as shopping recommendations specifically targeted to users known to be involved in certain activities. Further examples include healthcare and activity monitoring for patients, elders, and children, life logging applications and automatic status updating of social networks, and technologies relating to proactive personal assistants which take into account current user activities and activity history of the user.
For purposes of automatically recognizing the activity of a user, the conventional approach is to collect and label a set of training data for each class of user activity that needs to be recognized and to match current activity sensor readings to readings expected for one of a plurality of pre-defined classes of targeted activities of interest. However, such an approach necessarily requires training data for each of the activities desired to be recognized and, if there is no training data for a particular activity, a proper match to such an activity cannot be made. Thus, an activity of interest which is considered “previously unseen” with respect to the acquisition of appropriate training data cannot be recognized.
Furthermore, labeled examples and training data are typically extremely time consuming and expensive to develop and/or acquire and require significant efforts of human annotators and/or experts for such data to be useful in predicting activity performed by a user based on sensor readings. Thus, the ability to expand successful recognition to additional activities of interest is difficult and requires significant investment.